package com.vhall.component.service.goods.common;

import java.io.Serializable;

/**
 * @author guoxin.wang
 * @date 2021/10/14 15:35
 */
public final class GoodsConstant implements Serializable {

    /**
     * 商品状态--正常
     */
    public static final Integer GOODS_STATUS_ON = 1;

    /**
     * 商品状态--删除
     */
    public static final Integer GOODS_STATUS_OFF = 0;

    /**
     * 观众端商品列表入口开关缓存hash key
     */
    public static final String LIVE_GOODS_ENTRANCE_SWITCH_KEY = "live_goods_status";

    /**
     * 观众端商品列表入口开关--开
     */
    public static final Integer LIVE_GOODS_ENTRANCE_SWITCH_OPEN = 1;

    /**
     * 观众端商品列表入口开关--关
     */
    public static final Integer LIVE_GOODS_ENTRANCE_SWITCH_CLOSE = 0;

    /**
     * 观众端商品列表入口开关--无意义
     */
    public static final Integer LIVE_GOODS_ENTRANCE_SWITCH_NO_SENSE = -1;

    /**
     * 房间绑定商品首页数据缓存 %s :房间号
     */
    public static final String FIRST_PAGE_LIVE_GOODS_KEY = "liveGoods:bindlist:";

    /**
     * 首页绑定商品缓存有效时间
     */
    public static final Long FIRST_PAGE_LIVE_GOODS_KEY_EXPIRE = 10800L;


    /**
     * 商品点击操作类型--点击
     */
    public static final Integer OPERATE_TYPE_CLICK = 1;

    /**
     * 商品点击操作类型--加入购物车
     */
    public static final Integer OPERATE_TYPE_CAET = 2;


    /**
     * 是否上报数据-是
     */
    public static final Integer REPORT_ON = 1;

    /**
     * 是否上报数据-否
     */
    public static final Integer REPORT_OFF = 0;


    /**
     * 消息类型：3001。3001-推屏，2000-点赞，1010-禁言，1011-取消禁言，3000-暂停，
     * *  3010-播放中，3011-停止播放，1000-增加为用户数，1012-新增边拍边买商品
     */
    public static final String RECORD_TYPE_3001 = "goods_push_screen";

    /**
     * 消息类型：3001。3001-推屏，2000-点赞，1010-禁言，1011-取消禁言，3000-暂停，
     * *  3010-播放中，3011-停止播放，1000-增加为用户数，1012-新增边拍边买商品
     * 4001:修改按钮状态。
     */
    public static final String RECORD_TYPE_4001 = "goods_list_switch";

    /**
     * 直播间商品列表刷新消息
     * 使用场景：
     * 1、商品编辑之后，需要往已关联并且开播中的直播间发送刷新消息；
     * 2、商品取消关联（下架）/关联（上架）之后，需要往对应开播中的直播间发送刷新消息。
     */
    public static final String GOODS_LIST_REFRESH_MESSAGE_TYPE = "live_goods_list_refresh";

    /**
     * 查询stats表的锁的key
     */
    public static final String GOODS_STATS_LOCK_KEY = "comp:live_goods_stats:create_lock_key";

    /**
     * 绑定商品极限值-5000
     */
    public static final Integer BIND_LIMIT = 5000;

}
